Supress logging for requests to the /worker_status

Because the log level is set to ERROR exceptions will still be logged.
Added the 'quiet_assets' gem to remove noisy asset logging.

Dominik Sander лет %!s(int64=10): %!d(string=назад)
Родитель
Сommit
cc0c18b1f5
3 измененных файлов с 14 добавлено и 0 удалено
  1. 1 0
      Gemfile
  2. 3 0
      Gemfile.lock
  3. 10 0
      config/initializers/silence_worker_status_logger.rb

+ 1 - 0
Gemfile

@@ -79,6 +79,7 @@ gem 'mqtt'
79 79
 group :development do
80 80
   gem 'binding_of_caller'
81 81
   gem 'better_errors'
82
+  gem 'quiet_assets'
82 83
 end
83 84
 
84 85
 group :development, :test do

+ 3 - 0
Gemfile.lock

@@ -182,6 +182,8 @@ GEM
182 182
       coderay (~> 1.0)
183 183
       method_source (~> 0.8)
184 184
       slop (~> 3.4)
185
+    quiet_assets (1.0.2)
186
+      railties (>= 3.1, < 5.0)
185 187
     rack (1.5.2)
186 188
     rack-test (0.6.2)
187 189
       rack (>= 1.0)
@@ -347,6 +349,7 @@ DEPENDENCIES
347 349
   nokogiri (~> 1.6.1)
348 350
   protected_attributes (~> 1.0.7)
349 351
   pry
352
+  quiet_assets
350 353
   rack
351 354
   rails (= 4.1.1)
352 355
   rr

+ 10 - 0
config/initializers/silence_worker_status_logger.rb

@@ -0,0 +1,10 @@
1
+Rails::Rack::Logger.class_eval do
2
+  def call_with_silence_worker_status(env)
3
+    previous_level = Rails.logger.level
4
+    Rails.logger.level = Logger::ERROR if env['PATH_INFO'] =~ %r{^/worker_status}
5
+    call_without_silence_worker_status(env)
6
+  ensure
7
+    Rails.logger.level = previous_level
8
+  end
9
+  alias_method_chain :call, :silence_worker_status
10
+end